package com.bookmanger.server.service;

import com.bookmanger.pojo.DTO.BookDTO;
import com.bookmanger.pojo.Entity.BookEntity;
import com.github.pagehelper.PageInfo;
import java.util.List;

public interface BookManagerService {
    boolean addBook(BookDTO bookDTO);
    /**
     * 根据图书ID删除图书（逻辑删除）
     * @param id 图书ID
     * @return 是否删除成功
     */
    boolean deleteBookById(Integer id);
    boolean deleteBookByBookNumber(String bookNumber);
    boolean updateBook(BookDTO bookDTO);
    BookDTO getBookById(Integer id);
    List<BookDTO> searchBooks(String keyword);
    List<BookDTO> getAllBooks();
    
    // 新增接口：分页获取全部ISBN及其对应信息
    PageInfo<BookDTO> getAllBooks(Integer page, Integer pageSize);
    
    // 新增接口：分页搜索图书
    PageInfo<BookDTO> searchBooks(String keyword, Integer page, Integer pageSize);
    
    // 新增接口：根据ISBN ID获取实体书列表
    List<BookEntity> getBookEntitiesByIsbnId(Integer isbnId);
    
    // 新增接口：增加实体书
    boolean addBookEntities(Integer isbnId, Integer quantity);
    
    // 新增接口：删除实体书
    boolean deleteBookEntity(Integer bookId);
}